package Traverse.traverse2018;
//����������ǵݹ�
import domain.TreeNode;

import java.util.LinkedList;

public class LayerOrderTraverse {
	public static void main(String[] args) {
		TreeNode node1=new TreeNode(1);
		TreeNode node2=new TreeNode(2);
		TreeNode node3=new TreeNode(3);
		TreeNode node4=new TreeNode(4);
		TreeNode node5=new TreeNode(5);
		TreeNode node6=new TreeNode(6);
		TreeNode node7=new TreeNode(7);
		node1.left=node2;
		node1.right=node3;
		node2.left=node4;
		node2.right=node5;
		node3.left=node6;
		node3.right=node7;
		node4.left=node4.right=null;
		node5.left=node4.right=null;
		node6.left=node4.right=null;
		node7.left=node4.right=null;
		layerOrderTraverse(node1);
	}
    public static void layerOrderTraverse(TreeNode root){
    	  if(root==null){
    		  return;
    	  }
    	  LinkedList<TreeNode> queue = new LinkedList<TreeNode>();
    	  queue.add(root);
    	  TreeNode p = null;
    	  while(!queue.isEmpty()){
    		  p = queue.remove();
    		  System.out.print(p.val);
    		  if(p.left!=null){
    			  queue.add(p.left);
    		  }
    		  if(p.right!=null){
    			  queue.add(p.right);
    		  }
    	  }
      }
}
